package com.shockweb.common.utils.classmethod;

import java.lang.reflect.Method;

import org.apache.commons.lang.builder.HashCodeBuilder;

/**
 * class方法定义类
 * @author: 彭明华
 * History:
 * 2017年5月19日  彭明华创建
 */
public class ClassMethodDefine
{
	/**
	 * 方法的名称
	 */
    String name;
    
    /**
     * 方法
     */
    Method method;
    
	/**
	 * 构造方法
	 * @param name 方法名称
	 * @param method 方法
	 */
    public ClassMethodDefine(String name, Method method)
    {
        this.name = name;
        this.method = method;
    }

    /**
     * 返回方法的名称
     * @return String
     */
    public String getName()
    {
        return name;
    }

    /**
     * 设置方法的名称
     * @param name
     */
    public void setName(String name)
    {
        this.name = name;
    }

    /**
     * 返回方法
     * @return Method
     */
    public Method getMethod()
    {
        return method;
    }

    /**
     * 设置方法
     * @param method
     */
    public void setMethod(Method method)
    {
        this.method = method;
    }
    
    /**
     * 返回对象HashCode值
     * @return int
     */
    @Override
	public int hashCode() {
		return new HashCodeBuilder().append(getName()).hashCode();
	}
    /**
     * 输出当前ClassMethodDefine的主要信息
     */
    public String toString(){
    	return this.getName();
    }
}